#ifndef TIMER_H_
#define TIMER_H_

// Message Recieve Thread

//Message queue

//Accept Connections Thread



#include "NonCopyable.h"
#include "Singleton.h"

class Timer : public NonCopyable
{
private:
	Timer();
	friend class Singleton<Timer>;

public:
	void			Update();
    void            CalculateFrameRate();
	const float		GetDtSeconds() const;
    const float     GetDtMilliSeconds() const;
    const float     GetFrameRate();
    void            TogglePrint();
	unsigned int	GetElapsedTime();

private:
    bool            m_printing;
	unsigned int	m_oldTicks;
    float           m_frameRate;
	float			m_dt;
    float           m_frames;
    float           m_timeKeep;
};

typedef Singleton<Timer> TheTimer;

#endif